package com.yunxin.core.application.dto.page;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * @author zero°
 * @since 2023-07-17
 */
@Data
@Schema(description = "页面元素产品列表对象")
public class PageElementProductListDTO implements Serializable {

    /**
     * 最高可借金额
     */
    @Schema(description = "最高可借金额")
    private BigDecimal highestBorrowableAmount;
    /**
     * 标签
     */
    @Schema(description = "标签")
    private List<String> productLabelingList;
    /**
     * 特殊卖点
     */
    @Schema(description = "特殊卖点")
    private String sellingPoint;

    /**
     * 参考利率(JSON实体)
     */
    @Schema(description = "参考利率(JSON实体)")
    private ReferenceRate referenceRate;

    @Data
    public static class ReferenceRate implements Serializable {
        /**
         * 最低借款周期
         */
        @Schema(description = "最低借款周期")
        private BigDecimal minReferenceRate;
        /**
         * 最低借款周期期限单位 1.%天 2.%周 3.%月 4.%年
         */
        @Schema(description = "最低借款周期期限单位 1.%天 2.%周 3.%月 4.%年")
        private Integer minReferenceRateUnit;
        /**
         * 最高借款周期
         */
        @Schema(description = "最高借款周期")
        private BigDecimal maxReferenceRate;
        /**
         * 最高借款周期期限单位 1.%天 2.%周 3.%月 4.%年
         */
        @Schema(description = "最高借款周期期限单位 1.%天 2.%周 3.%月 4.%年")
        private Integer maxReferenceRateUnit;

    }
}
